package org.darcy.service;

import java.util.List;
import java.util.Map;

import org.darcy.entity.SysResources;
import org.darcy.framework.generic.GenericService;
import org.darcy.model.SysResourcesModel;

/**
 * 系统资源
 *
 */
public interface SysResourcesService extends GenericService<SysResources> {


    /**
     * 获取用户的资源列表
     *
     * @param map
     * @return
     */
    List<SysResourcesModel> listUserResources(Map<String, Object> map);

    /**
     * 获取ztree使用的资源列表
     *
     * @param rid
     * @return
     */
    List<Map<String, Object>> queryResourcesListWithSelected(Long rid);

    /**
     * 获取资源的url和permission
     *
     * @return
     */
    List<SysResourcesModel> listUrlAndPermission();

    /**
     * 获取所有可用的菜单资源
     *
     * @return
     */
    List<SysResourcesModel> listAllAvailableMenu();

    /**
     * 获取用户关联的所有资源
     *
     * @param userId
     * @return
     */
    List<SysResources> listByUserId(Long userId);
}
